﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Serialization;

namespace ElectronicCommerce.Framework.ServiceModel.WCF.BindingMessage
{
    [Serializable]
    [XmlRoot("readerQuotas")]
    public class SerReaderQuotas
    {
        private int maxDepthField = 32;

        private int maxStringContentLengthField = 8192;

        private int maxArrayLengthField = 12000000;

        private int maxBytesPerReadField = 4096;

        private int maxNameTableCharCountField = 16384;

        /// <remarks/>
        [XmlAttribute("maxDepth")]
        public int MaxDepth
        {
            get
            {
                return this.maxDepthField;
            }
            set
            {
                this.maxDepthField = value;
            }
        }

        /// <remarks/>
        [XmlAttribute("maxStringContentLength")]
        public int MaxStringContentLength
        {
            get
            {
                return this.maxStringContentLengthField;
            }
            set
            {
                this.maxStringContentLengthField = value;
            }
        }

        /// <remarks/>
        [XmlAttribute("maxArrayLength")]
        public int MaxArrayLength
        {
            get
            {
                return this.maxArrayLengthField;
            }
            set
            {
                this.maxArrayLengthField = value;
            }
        }

        /// <remarks/>
        [XmlAttribute("maxBytesPerRead")]
        public int MaxBytesPerRead
        {
            get
            {
                return this.maxBytesPerReadField;
            }
            set
            {
                this.maxBytesPerReadField = value;
            }
        }

        /// <remarks/>
        [XmlAttribute("maxNameTableCharCount")]
        public int MaxNameTableCharCount
        {
            get
            {
                return this.maxNameTableCharCountField;
            }
            set
            {
                this.maxNameTableCharCountField = value;
            }
        }
    }
}
